/**
 * 发布审批接口类型
 */
export interface ApprovalRelease {
  /**
   * 应用编码
   */
  appCode?: string;
  /**
   * 审批编号(32位)
   */
  approvalCode?: string;
  /**
   * 审批标题
   */
  approvalTitle?: string;
  /**
   * 业务编码
   */
  businessCode?: string;
  /**
   * 表单值信息
   */
  ctlValues?: CtlValueInfo[];
  /**
   * 节点信息
   */
  pointDetails?: PointDetail[];
  /**
   * 流程id
   */
  processId?: number;
  /**
   * 流程结果进度（1 同意 2退回 3驳回 4审批中 5待执行）
   */
  processRate?: number;
}

/**
 * ctl_value_info，控件值信息表
 */
export interface CtlValueInfo {
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 控件id
   */
  ctlId?: number;
  /**
   * 控件值信息
   */
  ctlValue?: string;
}

export interface PointDetail {
  id?: number;
  /**
   * 审批编号（32位）
   */
  approvalCode?: string;
  /**
   * 审批形式（1 依次审批 2 会签 3 或签）
   */
  examineType?: number;
  /**
   * 下一节点
   */
  nextStep?: number;
  /**
   * 下一节点类型1 审批节点、2 抄送节点、3 子级流程、4 条件分支、5 发起人节点 6 结束节点
   */
  nextStepType?: number;
  /**
   * 参与者信息
   */
  participantInfos?: Participant[];
  /**
   * 节点id
   */
  pointId?: number;
  /**
   * 节点进度（1 同意 2退回 3驳回 4审批中 5待执行）
   */
  pointRate?: number;
  /**
   * 节点类型（1 审批节点、2 抄送节点、3 子级流程、4 条件分支、5 发起人节点 6 结束节点）
   */
  pointType?: number;
  /**
   * 节点名称
   */
  pointName?: string;
}

/**
 * participant，参与者信息表
 */
export interface Participant {
  /**
   * 审批结果（1 同意 2退回 3驳回 4审批中 5待执行 6无操作）
   */
  approvalResult?: number;
  /**
   * 参与者id
   */
  objId?: number;
  /**
   * 参与者名称
   */
  objName?: string;
  /**
   * 审批意见
   */
  opinions?: string;
  /**
   * 参与者顺序
   */
  orderNo?: number;
  /**
   * 节点值id
   */
  pointValueId?: number;
}

export interface ApprovalReleaseParams {
  pageNumber?: number;
  pageSize?: number;
  appCode?: string;
  businessCode?: string;
  approvalCode?: string;
  processId?: number;
  userId?: number;
  /**
   * 查询类型（1 待处理 2 已处理 3 已发起 4 收到的）
   */
  queryType?: number;
}
export interface EditApprovalRelease {
  processId?: number;
  /**
   * 应用编码
   */
  appCode?: string;
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 退回到的节点
   */
  backNodeId?: number;
  /**
   * 业务编码
   */
  businessCode?: string;
  /**
   * 审批形式
   */
  examineType?: number;
  /**
   * 节点值id
   */
  nodeDetailId?: number;
  /**
   * 节点类型
   */
  nodeType?: number;
  /**
   * 审批参与人信息
   */
  participants: Participants;
  /**
   * 当前节点和退回至节点区间id
   */
  backIntervalNodeIds?: number[];
}

/**
 * 审批参与人信息
 */
export interface Participants {
  /**
   * 审批结果（1 同意 2退回 3驳回 4审批中 5待执行 6无操作）
   */
  approvalResult?: number;
  /**
   * 参与者id（代表用户id）
   */
  objId?: number;
  /**
   * 参与者名称
   */
  objName?: string;
  /**
   * 审批意见
   */
  opinions?: string;
  /**
   * 参与者顺序
   */
  orderNo?: number;
  /**
   * 节点值id
   */
  pointValueId?: number;
}
export interface DelApprovalRelease {
  /**
   * 应用编码
   */
  appCode?: string;
  /**
   * 审批编号
   */
  approvalCode?: string;
  /**
   * 业务编码
   */
  businessCode?: string;
}
